iT邦幫忙

DAY 12
1

動物園之路系列 第 12

動物園之路 -12- 跟大象說Hello~MapReduce(2)

  • 分享至 

  • xImage
  •  

昨天寫的MapReduce並沒有放在Hadoop上跑,只有在Eclipse裡面跑,所以今天會把jar檔丟到Hadoop裡面,來看看執行的效果。
我也把檔案在累加為1.1GB (用虛擬機所以就沒放大檔摟),也可以看看分割Block的效果。
在前面有提到Hadoop的檔案儲存架構,會將一個檔案切成許多區塊(Blocks),所以我把1.1GB的檔案(cardinput.txt)存在HDFS上,按照內建的分割區塊大小(128MB),該檔案會被切成九個區塊。

左邊這些數字,代表這個檔案真正存在檔案系統的名稱,後面127.0.0.1是代表該block的複本存放在那幾個node上,因為我只有一個node,所以只有一個。

接著我把昨天Cloudera的範例包成jar檔(不用包成Runnable Jar喔),還有把要運算的cardinput.txt放到對的路徑上(hdfs:/user/cloudera/cardinput.txt)。
在cli下執行

hadoop jar ./Card.jar CardDriver cardinput.txt output

./Card.jar 就是我剛才打包的jar檔,CardDriver則代表裡面要執行MapReduce的Class。

按下Enter之後,就會開始執行~

也可以透Map/Reduce administration 看運行的過程

當完成後,Running Jobs 內的job 就會移到Completed Jobs

這邊可以注意到map的數量跟該檔案切割的區塊是一樣了,除了hdfs的區塊大小可以設定外,map的input大小也是可以設定了。如果用Cloudera的Hue,可以看到更漂亮的畫面 哈

因為我把檔案放大了,所以結果當然也變多了,因為用虛擬機的關係,總共花了三分鐘多,
等上次佈署多一個node的問題解決,再來試看看速度是不是有變快。

今天先暫時到這,最近借了一本大數據的獲利模式感覺蠻好看了,
明天還要參加Hadoop in Taiwan 2013~,到時候再分享一些心得摟~


上一篇
動物園之路 -11- 跟大象說Hello~MapReduce(1)
下一篇
動物園之路 -16- 大象的肚子好大!-HDFS
系列文
動物園之路27
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言